package modelo

import java.util.ArrayList
import exepciones.perdisteException
import org.uqbar.commons.utils.Observable
import java.util.List

@Observable
class Jardin {
	@Property List<Terreno> filas= new ArrayList<Terreno>
	
	new(){
		filas.add(new TerrenoTerrestre)
		filas.add(new TerrenoTerrestre)
		filas.add(new TerrenoTerrestre)
		filas.add(new TerrenoTerrestre)
		filas.add(new TerrenoTerrestre)
		//este metodo solo tiene valor como herrmienta agil para test
		//se basa en la simplicidad para agregar plantas de la super clase terreno
		//y la inconveniencia de usar el new() siguiente
	}
	
	new(Terreno fila1,Terreno fila2,Terreno fila3,Terreno fila4,Terreno fila5){
		filas.add(fila1)
		filas.add(fila2)
		filas.add(fila3)
		filas.add(fila4)
		filas.add(fila5)
	}
	
	def seMurio (Atacante planta, int f){
		filas.get(f).elimina(planta)
	}
	
	
	def queHayEn(int fila,Observer obs) {
		filas.get(fila).dameLaUltimaPlanta(obs)
	}
	
	def agregaPlanta(int i, Planta planta) {
	filas.get(1).agrega(planta)
	}
	
	def dameLaFila(int i) {
		filas.get(i)
	}
	

	
}